Composition of Customized Presentations Associated with a Social Media Application

ABSTRACT

According to a general aspect, a method can include receiving a request, triggered via a consumer account, to access, using a social media application, a plurality of sharer content. The sharer content can be associated with a sharer account using the social media application. The method can include retrieving, in response to the request, a consumer value and a relationship value. The consumer value can represent an interaction with the social media application via the consumer account and the relationship value can characterize a relationship between a consumer identifier of the consumer account and a sharer identifier of the sharer account. The method can include selecting a subset of sharer content from the plurality of sharer content based on a combination of the consumer value and the relationship value, and can include defining a portion of a presentation customized for the consumer account using the selected subset of sharer content.

RELATED APPLICATION

This application is a continuation of and claims priority to U.S. patentapplication Ser. No. 12/895,173, filed Sep. 30, 2010, titled“Composition of Customized Presentations Associated with a Social MediaApplication,” which is incorporated herein by reference in its entirety.

TECHNICAL FIELD

This description relates to presentation of content associated with asocial media application.

BACKGROUND

Several known social media applications are available for sharing ofcontent (e.g., image content, audio content, textual content) through,for example, the Internet. A user of one of these known social mediaapplications can share content via the social media application withanother user of the social media application. A user sharing contentusing the social media application can be referred to as a sharer, and auser consuming content using the social media application can bereferred to as a consumer. Because the volume of the content shared viathe social media application by the sharer can be relatively largeand/or diverse, sifting through the content to pick and choose contentthat would be of interest to the consumer can be unpleasant and/ortime-consuming for the consumer. The sifting may be undesirable because,for example, large portions of the content shared by the sharer throughthe social media application may not be relevant to the consumer orduplicative of other content already consumed by the consumer. Thus, aneed exists for systems, methods, and apparatus to address theshortfalls of present technology and to provide other new and innovativefeatures.

SUMMARY

According to one general aspect, a tangible computer-readable storagemedium can store code representing instructions that when executed areconfigured to cause a processor or a computer system to perform aprocess. The code can include code to receive a request, associated witha consumer account, to access, using a social media application, aplurality of sharer content. The sharer content can be associated with asharer account using the social media application. The code can includecode to retrieve, in response to the request, a plurality of consumervalues representing a plurality of interactions with the social mediaapplication via the consumer account during a time period occurringbefore the request is received, and code to select a subset of sharercontent from the plurality of sharer content based on the plurality ofconsumer values. The code can include code to define a portion of apresentation customized for execution via the consumer account based onthe plurality of consumer values and using the selected subset of sharercontent.

According to another general aspect, a tangible computer-readablestorage medium can store code representing instructions that whenexecuted are configured to cause a processor to perform a process. Thecode can include code to receive a request, via a consumer account, toaccess using a social media application a plurality of sharer contentassociated with a sharer account using the social media application. Thecode can include code to retrieve, in response to the request, aplurality of consumer values representing a plurality of interactionswith the social media application, the plurality of interactions beingassociated with the consumer account during a time period occurringbefore the request is received, and code to define a first portion of apresentation based on the plurality of consumer values and a firstportion of sharer content from the plurality of sharer content. The codecan also include code to detect an interaction, occurring via theconsumer account, with the first portion of the presentation, and codeto define a second portion of the presentation based on a combination ofthe plurality of consumer values, a second portion of sharer contentfrom the plurality of sharer content, and the interaction with the firstportion of the presentation.

According to yet another general aspect, a computer system can includeinstructions stored on a tangible computer-readable storage medium. Thecomputer system can include a presentation module configured to receivea request, triggered via a consumer account, to access using a socialmedia application a plurality of sharer content associated with a shareraccount of the social media application. The computer system can includea relationship module configured to access, in response to the request,a relationship value representing a type of relationship between aconsumer identifier of the consumer account and a sharer of the shareraccount within a social network associated with the sharer account. Thecomputer system can also include a presentation composition moduleconfigured to select a subset of sharer content from the plurality ofsharer content based on the relationship value, and configured to definea configuration of the subset of sharer content within a portion of apresentation based on the relationship value.

According to yet another general aspect, a method can include receivinga request, triggered via a consumer account, to access, using a socialmedia application, a plurality of sharer content. The sharer content canbe associated with a sharer account using the social media application.The method can also include retrieving, in response to the request, aconsumer value and a relationship value where the consumer value canrepresent an interaction with the social media application via theconsumer account and where the relationship value can characterize arelationship between a consumer identifier of the consumer account and asharer identifier of the sharer account. The method can also includeselecting a subset of sharer content from the plurality of sharercontent based on a combination of the consumer value and therelationship value, and can include defining a portion of a presentationcustomized for the consumer account using the selected subset of sharercontent.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features will beapparent from the description and drawings, and from the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram that illustrates a presentation module of thesocial media application configured to define a presentation based onsharer content.

FIG. 2 is a block diagram that illustrates a presentation moduleconfigured to define at least a portion of a presentation based onsharer content.

FIG. 3 is a diagram that illustrates portions of a presentation valuedatabase.

FIG. 4 is a diagram that illustrates a timeline of consumerinteractions, sharer content sharing, and execution of a presentation.

FIG. 5 is a diagram that illustrates stages related to defining acustomized presentation for a consumer based on sharer content.

FIG. 6A is a diagram that illustrates a social network includingmultiple users.

FIG. 6B is a diagram that illustrates a database with informationassociated with the relationships within the social network shown inFIG. 6A.

FIG. 7 is a diagram that illustrates defining of a portion of apresentation within a composition time window based on sharer contentstored in a sharer database.

FIG. 8 is a flowchart that illustrates a method for definingpresentation.

FIG. 9 is a block diagram that illustrates a presentation templateretrieved from a memory of a social media application.

FIG. 10 is a block diagram that illustrates interactive presentationsthat can be defined using the social media application.

FIG. 11 is a flowchart that illustrates a method for interactivelydefining a presentation.

DETAILED DESCRIPTION

FIG. 1 is a block diagram that illustrates a presentation module 100 ofthe social media application 150 configured to define a presentation 30based on sharer content 20. The presentation 30 can be requested (asrepresented by line X) from the presentation module 100 by a consumer Busing a consumer device 140 via the social media application 150. Afterthe presentation 30 has been defined, the presentation can be sent (asrepresented by line Y) for consumption (e.g., viewing, listening,storing) by the consumer B via the consumer device 140 (e.g., via adisplay of the consumer device 140). In some embodiments, or morefunctions of the presentation module 100 can be integrated into thesocial media application 150 as functions of the social mediaapplication 150. In some embodiments, the social media application 150can be referred to as a social media system and can be part of a socialmedia platform.

The sharer A and the consumer B are referred to respectively as a sharerand as a consumer based on their respective perspectives in thetransactions shown in FIG. 1. Thus, the sharer A and the consumer B areeach users of the social media application 150, but are referred torespectively as a sharer and as a consumer based on their respectiveroles/participation within the transactions shown in FIG. 1.Accordingly, in some embodiments, the sharer A could participate as aconsumer and the consumer B could participate as a sharer in a differenttransaction.

The consumer B is a user of the social media application 150 that can bereferred to as a consumer because the consumer is requesting content forconsumption (e.g., viewing). In this embodiment, the consumer B isspecifically requesting to view sharer content 20 associated with thesharer A. The sharer A is a user of the social media application 150that can be referred to as the sharer because the content (i.e., thesharer content 20) to be consumed by the consumer B in the presentation30 is being shared (e.g., being made available, uploaded, posted) by thesharer A. In some embodiments, the sharer A can be the subject of thesharer content 20. In some embodiments, the sharer A and/or the consumerB can be, for example, a person, an entity, a group, etc., authorized touse the social media application 150. In some embodiments, authorizationto use the social media application 150 (e.g., access content associatedwith the sharer A using the social media application 150) may be limitedby, for example, the sharer A.

In some embodiments, a user (such as the sharer A and/or the consumer B)of the social media application 150 may have a user account throughwhich the user may access the social media application 150. In someembodiments, a first user may access, using the account of the firstuser, content associated with an account of a second user. In someembodiments, the first user may be able to access the content associatedwith the account of the second user only if authorized (e.g., authorizedby the second user) to do so. In some embodiments, a user accountassociated with the sharer A can be referred to as a sharer account, anda user account associated with the consumer B can be referred to as aconsumer account. In some embodiments, an account of the user associatedwith the social media application 150 can be referred to as a socialmedia account (or as an account). Although actions (e.g., interactions)of a user (e.g., a consumer, a sharer) may not be explicitly describedas being performed through or associated with (e.g., attributed to) asocial media account, any action (e.g., transaction) of a user describedherein may be associated with the social media account of the user (andinformation related to the action can also be associated with the socialmedia account). For example, a request triggered by a user, or contentaccessed by the user, may be associated with a social media account ofthe user through which these actions are performed.

In some embodiments, the sharer A and/or the consumer B may optionallylimit access to their respective accounts (e.g., content associated anaccount, a user profile associated with an account, etc.) using thesocial media application 150. For example, in some embodiments, theconsumer B (via an account of the consumer B) may request access to anaccount of the sharer A. The sharer A may optionally grant the consumerB access to (e.g., access to at least a portion of) the account of thesharer A, or optionally deny the consumer B access to the account of thesharer A. In some embodiments, the sharer A may optionally limit (orallow) access to the account of the sharer A so that a user such asconsumer B may not be permitted to request access to the account of thesharer A. As another example, the sharer A (via an account of the sharerA) may invite consumer B (via an account of the consumer B) to access atleast a portion (e.g., a portion of content) of the account of thesharer A. The consumer B may optionally accept the invitation to accessthe account of the sharer A, or optionally reject the invitation toaccess the account of the sharer A. In some embodiments, the consumer Bmay optionally limit (or allow) access to the account of the consumer B,so that a user such as sharer A may not even be permitted to inviteconsumer B to access the account of the sharer A.

The presentation 30 can be a presentation that is customized (e.g.,customized in a specified configuration) by the presentation module 100for consumption by the consumer B via the consumer device 140.Specifically, the presentation 30 can be customized in a targetedfashion for consumption by the consumer B via the consumer device 140 inresponse to the request triggered by the consumer B. Thus, thepresentation 30 may not be a predefined presentation, but may instead bea presentation uniquely defined in response to the request (representedby line X) triggered by the consumer B.

The presentation 30 can include various aspects that can each becustomized (e.g., customized with specified sharer content 20 and/or aspecified format that has a visual configuration and/or audioconfiguration) for consumption by the consumer B. For example, a formatof the presentation 30, the sharer content 20 (or other content)included in the presentation 30, and/or so forth can be customized forthe consumer B.

The presentation 30 (e.g., the content of the presentation 30, theformat of the presentation 30, etc.) can be customized by (e.g.,selected by, defined by) the presentation module 100 based on one ormore presentation values 10. The presentation values 10 can includevarious types of values (not shown in FIG. 1) that can be received from(e.g., acquired from) and/or defined based on information from varioussources. For example, the presentation values 10 can include, or can be,consumer values, relationship values, sharer values, content values,third-party values, and/or so forth. Because the consumer values, thesharer values, and the third-party values, are associated with differentusers (i.e., consumers, sharers, and third-party users) of the socialmedia application 150, these values can collectively (or individually)be referred to as user values. More details related to presentationvalues and customization of presentations (e.g., customization in aspecified configuration) based on presentation values are discussed inconnection with the figures below.

The foregoing presentation values 10, which can include consumer values,relationship values, sharer values, content values, etc., can be basedon data collected upon user consent. In some implementations, a user(e.g., sharer A, consumer B) can be prompted to explicitly allow datacollection. In some implementations, a consumer value (which is a typeof presentation value 10) associated with a consumer can be based ondata collected with permission of the consumer. In some embodiments, aconsumer may optionally prevent use of the consumer value.

The sharer content 20 can be referred to as sharer content because thesharer content 20 is associated with a social media account of thesharer A. The sharer content 20 can be made available to thepresentation module 100 (and associated with the sharer account) by asharer using a sharer device 110 via the social media application 150.In some embodiments, the sharer content 20 can be from content includedin, or associated with, applications (e.g., applications associated witha platform) independent from the social media application 150. Thus,content from applications interfacing with the social media application150 can be included in the sharer content 20. For example, at least aportion (e.g., a subset) of the sharer content 20 can be content that islinked into the sharer content 20 (and associated with the shareraccount) from another source (e.g., from an account of the sharer A withanother content source). In some embodiments, the sharer content 20 caninclude content from another social media application (not shown) andcan be included in the sharer content 20 (and associated with the socialmedia account of the sharer A) by a user other than the sharer A (e.g.,the consumer B, a third-party user).

The social media application 150 can be, or can include, any type ofhardware and/or software configured to facilitate users of the socialmedia application 150 to interact and/or share content. A user can sharecontent by, for example, uploading (e.g., posting) the content via thesocial media application 150 to a location where the content may beaccessed by another user via the social media application 150. In someembodiments, the sharing of content can be referred to as generation ofcontent. In some embodiments, the social media application 150 can be acollaborative environment through which one or more users (such assharer A and/or consumer B) can engage in collaborative work. In someembodiments, the social media application 150 can include one or moresearch engines, social network services, forums, instant messaging/chatapplications, virtual environments, peer-to-peer communicationsapplications, and/or so forth. In some embodiments, the social mediaapplication 150 can include, or can be based on, one or more openapplication programming interfaces (APIs).

Although not shown, in some embodiments the social media application 150(or portions thereof) can be configured to operate within, for example,a data center (e.g., a cloud computing environment), a computer system,one or more server/host devices, and/or so forth. In some embodiments,the social media application 150 (or portions thereof) can be configuredto operate within a network. Thus, the social media application 150 canbe configured to function within various types of network environmentsthat can include one or more client devices and/or one or more serverdevices. For example, the network can be, or can include, a local areanetwork (LAN), a wide area network (WAN), and/or so forth. The networkcan be, or can include, a wireless network and/or wireless networkimplemented using, for example, gateway devices, bridges, switches,and/or so forth. The network can include one or more segments and/or canhave portions based on various protocols such as Internet Protocol (IP)and/or a proprietary protocol. The network can include at least aportion of the Internet.

The sharer device 110 and/or the consumer device 140 can be, forexample, a wired device and/or a wireless device (e.g., wi-fi enableddevice) and can be, for example, a computing entity (e.g., a personalcomputing device), a mobile phone, a personal digital assistant (PDA), aserver device (e.g., a web server), a host device, and/or so forth. Thesharer device 110 and/or the consumer device 140 can be configured tooperate based on one or more platforms (e.g., one or more similar ordifferent platforms) that can include one or more types of hardware,software, firmware, operating systems, runtime libraries, and/or soforth.

In some embodiments, the sharer device 110 and/or the consumer device140 can represent a cluster of devices (e.g., a server farm). In such anembodiment, the functionality and processing of the sharer device 110and/or the consumer device 140 can be distributed to several devices ofthe cluster of devices.

FIG. 2 is a block diagram that illustrates a presentation module 200configured to define at least a portion of a presentation 37 based onsharer content 39. The presentation module 200 is included as acomponent within a social media application 250. In some embodiments,the social media application 250 can be configured to operate within, orcan be part of, for example, a portion of a data center, a computingdevice, and/or so forth. As shown in FIG. 2, the sharer content 39,which includes sharer content 31 through 34, is stored in a sharerdatabase 274. In this embodiment, the presentation 37 is executed at(e.g., displayed within, rendered within) a display 242 of a consumerdevice 240 for consumption by consumer D.

As shown in FIG. 2, the presentation module 200 includes three mainmodules—a presentation value module 220, a presentation compositionmodule 260, and a user interface module 280. The presentation valuemodule 220 is configured to manage (e.g., acquire, define, send)presentation values that can be used by the presentation compositionmodule 260 to define the presentation 37. Thus, the presentationcomposition module 260 can be configured to define the presentation 37based on presentation values received from the presentation value module220. The user interface module 280 is configured to manage (e.g., send,manipulate, trigger execution of) a social media user interface 15through which users such as the sharer C and/or the consumer D canaccess (e.g., use) the social media application 250. For example, thesharer C can access the social media application 250 via the socialmedia user interface 15 using the sharer device 210.

The social media user interface 15 can be, for example, a browser-baseduser interface that includes various buttons, links, controls, services,and/or so forth that can be used by a user (such as consumer D) toaccess the social media application 250. The social media user interface15 can be rendered within a device of the user so that the user canaccess one or more functions of the social media application using thesocial media user interface 15. For example, the consumer D can, usingthe consumer device 240, access the social media user interface 15served by the user interface module 280 to a browser application of theconsumer device 240. The consumer D can then use the social media userinterface 15 to trigger one or more functions associated with the socialmedia application 250. In this embodiment, a request to access thesharer content 39 associated with the sharer C can be defined inresponse to an interaction of the consumer D with the social media userinterface 15 using a consumer device 240. In response to the request,the presentation 37 can be defined by the presentation module 200 andcan be sent for execution (e.g., for processing) within the social mediauser interface 15 so that the presentation 37 can be consumed by theconsumer D using the consumer device 240.

As another example, the sharer C can invite the consumer D to access thesharer content 39 associated with the sharer C via the social media userinterface 15. In response to the consumer D accepting the invitation,the presentation 37 can be defined by the presentation module 200 andcan be sent for execution (e.g., for processing) within the social mediauser interface 15 so that the presentation 37 can be consumed by theconsumer D using the consumer device 240.

In some embodiments, a request for the presentation 37 can be defined inresponse to the consumer D requesting access to at least a portion ofthe sharer content 39 associated with an account (e.g., a social mediaaccount) of the sharer C. Thus, a request for the presentation 37 can beautomatically defined in response to the consumer D requesting access toat least a portion of the sharer content 39. In some embodiments, arequest for the presentation 37 can be manually triggered by theconsumer D. For example, a request for the presentation 37 can bedefined by the consumer D using, for example, a button, or other requesttriggering mechanism, included in the social media user interface 15.

As shown in FIG. 2, the presentation value module 220 includes aconsumer module 221 configured to manage (e.g., define, acquire) one ormore consumer values. A consumer value can represent one or moreinteractions of the consumer D with the social media application 250 (oranother application independent from the social media application 250).In some embodiments, the interaction(s) can be triggered via theconsumer device 240 (or another consumer device). For example, aconsumer value (or collection of consumer values) can represent abehavior of the consumer D with respect to the social media application250 (or another application independent from the social mediaapplication 250).

In some embodiments, a consumer value can represent a usage behavior(e.g., a usage pattern, a usage level) of the social media application250 by the consumer D. For example, a consumer value (or collection ofconsumer values) can represent a frequency of access (e.g., during atime period) to the social media application 250. As a specific example,a consumer value can represent parameters related to accessing of thesocial media application 250 within a time period (e.g., before arequest for the presentation 37). In some embodiments, the consumervalue can represent when (e.g., a time) the social media application 250was accessed and/or the type of content accessed. In some embodiments, aconsumer value can indicate the type of content (e.g., an audio file, animage file) and/or a subject matter (e.g., photographs of people,photographs of places, music by particular group) of the content thathas been consumed by and/or shared by (e.g., stored by, uploaded by,posted by) the consumer D using the social media application 250 (withina time period). In some embodiments, a consumer value can reflectfeedback (e.g., posted a comment) related to content (e.g., the sharercontent 39, third party content, content posted by the consumer, etc.)consumed by the consumer D via the consumer device 240 using the socialmedia application 250. In some embodiments, one or more consumer valuescan indicate a geo-location (e.g., using global positioning system (gps)coordinates) and/or an identifier of a device (e.g., a media accesscontrol (MAC) address) when content is consumed and/or shared using thesocial media application 250.

As shown in FIG. 2, the presentation value module 220 includes arelationship module 222 configured to manage (e.g., define, acquire) oneor more relationship values. A relationship value can present arelationship (or characteristic of a relationship) between the sharer Cand the consumer D. For example, in some embodiments, a relationshipvalue can represent whether the sharer C and the consumer D have a closerelationship or do not have a close relationship (e.g., an attenuatedrelationship). In some embodiments, relationship value can represent atype of relationship between the sharer C and the consumer 214. Forexample, a relationship value can indicate that the sharer C and theconsumer 214 have a business relationship, are close friends, are merelyacquaintances, or are members of the same immediate family.

In some embodiments, relationship module 222 can be configured to defineone or more relationship values based on a social network including thesharer C and the consumer D. In some embodiments, the relationship valuecan be defined based on an analysis of a social network originating withthe sharer C and/or a social network originating with the consumer D. Insome embodiments, the social network can include many users of thesocial media application 250 including the sharer C and the consumer D.For example, the relationship module 222 can be configured to analyze anumber of relationships (e.g., connections) between the sharer C andusers connected to the consumer D. These relationships can be anindicator of the closeness of the relationship between the consumer Dand the sharer C. More details related to relationship values andrelationship values defined based on a social network are described inconnection with, for example, FIGS. 6A and 6B.

As shown in FIG. 2, the presentation value module 220 includes a sharermodule 223 configured to manage (e.g., define, acquire) one or moresharer values. A sharer value can represent one or more interactions ofthe sharer C with the social media application 250 (or anotherapplication independent from the social media application 250). In someembodiments, the interaction(s) can be triggered via the sharer device210 (or another sharer device). For example, a sharer value (orcollection of sharer values) can represent a behavior of the sharer Cwith respect to the social media application 250 (or another applicationindependent from the social media application 250).

In some embodiments, a sharer value can represent a usage behavior(e.g., a usage pattern, a usage level) of the social media application250 by the sharer C. For example, a sharer value (or collection ofsharer values) can represent a frequency of access (e.g., during a timeperiod) to the social media application 250. As a specific example, asharer value can represent a time that the sharer C has accessed thesocial media application 250 within a time period (e.g., before arequest for the presentation 37). These types of sharer values can beindicators of significant life events of the sharer C such as a wedding,a vacation, etc. In some embodiments, the sharer value can representwhen (e.g., a time) the social media application 250 was accessed and/orthe type of content accessed. In some embodiments, a sharer value canindicate the type of content (e.g., an audio file, an image file) and/ora subject matter (e.g., photographs of people, photographs of places,music by particular group) of the content that has been consumed byand/or shared by (e.g., stored by, uploaded by, posted by) the sharer Cusing the social media application 250 (within a time period). Thecontent can be the sharer content 39 of the sharer C (e.g., associatedwith a social media account of the sharer C) and/or can be contentassociated with one or more users other than the sharer C (e.g.,associated with a social media account of the other users). In someembodiments, a sharer value can reflect feedback (e.g., posted acomment) related to content (e.g., the sharer content 39, third partycontent, content posted by the consumer, etc.) consumed by the sharer Cvia the consumer device 240 using the social media application 250. Insome embodiments, one or more sharer values can indicate geo-location ofthe consumer D (e.g., using global positioning system (gps) coordinates)and/or an identifier of a device (e.g., a media access control (MAC)address) when the sharer C is consuming content and/or sharing contentusing the social media application 250.

As shown in FIG. 2, the presentation value module 220 includes a contentmodule 224 configured to manage (e.g., define, acquire) one or morecontent values. A content value can represent (or can be an indicatorof), for example, an analysis of one or more portions of contentassociated with the social media application 250. For example, a contentvalue can represent a characteristic of a portion of the sharer content39 such as a type of the sharer content (e.g., whether the sharercontent is an image file or an audio file), and/or so forth. In someembodiments, the content value can indicate that a portion of the sharercontent 39 is associated with (e.g., classified within) a particularcontextual category based on a subject matter of the sharer content. Forexample, content value can indicate a portion of the sharer content 39is related to a contextual category such as a category that reflects anevent in the life of a user, a vacation category, a scenery category, afamily event category (e.g., a wedding event category), a businesscategory, an animal category, and/or so forth. In some embodiments,content value can indicate a time that a portion of the sharer content39 was stored in the sharer database 274, a time that the portion of thesharer content 39 was created, etc. In some embodiments, a content valuecan represent that a particular portion of the sharer content 39 isrelated to a contextual category.

In some embodiments, the content module 224 can be configured to defineone or more content values based on analysis of more portions of contentsuch as the sharer content 39. For example, the content module 224 canbe configured to analyze an image and/or can be configured to analyzemetadata associated with the image to determine the subject matter ofthe image. The content module 224, using information about the subjectmatter of the image, can define a content value representing the subjectmatter of the image. In some embodiments, the content module 224 can beconfigured to associate one or more portions of content with acontextual category and/or can be configured to rank the relevance ofcontent with respect to other content. In some embodiments, the contentmodule 224 can be configured to analyze the subject matter of textualcontent and/or metadata associated with content using, for example,natural language processing (NLP) techniques. More details related tocontent values and details related to the analysis of content to definecontent values are described herein, for example, in connection withFIG. 7.

A third-party value can represent one or more interactions of athird-party user (not shown) with the social media application 250 (oranother application independent from the social media application 250).In some embodiments, the third-party user can be a user of social mediaapplication 250 that is not the sharer C or the consumer D. One or morethird-party values can be similar to (or the same as) the consumervalues and/or the sharer values, but with respect to a third-party user.For example, a third-party value can represent a usage behavior of athird-party user, a type of content and/or a subject matter of thecontent consumed by and/or shared by the third-party user, and/or soforth.

In some embodiments, the information represented by a presentation valuemay or may not overlap with information represented by anotherpresentation value. For example, a content value may provide informationthat is similar to or the same as information provided by a consumervalue. In some embodiments, the information represented by differentpresentation values can be different.

In some embodiments, one or more presentation values defined by thepresentation value module 220 can be stored in the memory 270. Forexample, the presentation values can be stored in a presentation valuedatabase 272.

Presentation values can be defined and stored in the presentation valuedatabase 272 before a request is received for a presentation from aconsumer (such as the consumer D) so that the presentation value(s) canbe retrieved rather than defined in response to the request. Forexample, when a change in a relationship with the sharer C is detectedby the relationship module 222, the relationship module 222 can beconfigured to define a relationship value representing the change in therelationship. In some embodiments, the content module 224 can beconfigured to analyze content as the content is being uploaded using thesocial media application 250 so that content values associated with thecontent can be defined for later use by the presentation compositionmodule 260. In some embodiments, the consumer module 221 can beconfigured to define one or more consumer values in response tointeractions of the consumer D with the social media application 250 asthe interactions are occurring (or shortly after they have occurred) sothat the consumer value(s) can be used by the presentation compositionmodule 260 to define a presentation such as presentation 37.

The presentation values described above are discussed by way of exampleonly and may not be inclusive of every type of presentation value thatcan be used by a presentation module such as presentation module 200 todefine a presentation such as presentation 37. More details related tocustomization of presentations such as presentation 37 based onpresentation values, such as those discussed above, are discussed belowand in connection with the remaining figures.

The sharer content 39 can include, or can be, for example, various typesof content. For example, the sharer content 39 can include, or can be,image content (e.g., a Joint Photographic Experts Group (JPEG) file),audio content (e.g., a .wav file), textual content (e.g., an AmericanStandard Code for Information Interchange (ASCII) file, a rich textformal (RTF) file), metadata content, executable content (e.g., a Javaprogram) and/or so forth.

As shown in FIG. 2, the presentation composition module 260 includes acontent selector 261. The content selector 261 is configured to selectat least a portion of the sharer content 39 for inclusion in thepresentation 37 based on presentation values (e.g., consumer values,relationship values, etc.) received at the presentation compositionmodule 260 from the presentation value module 220. Specifically, thecontent selector 261 can be configured to select all of the sharercontent 39 or a subset of the sharer content 39 (e.g., a subset of thesharer content 39 accessible by the consumer D) for inclusion in thepresentation 37 based on one or more presentation values. Because thesharer content 39 includes various types of content, it logicallyfollows that the portion of the sharer content 39 selected by thecontent selector 261 for the presentation 37 can include various typesof content such as image content, audio content, textual content,metadata content, executable content, and/or so forth.

Also, as shown in FIG. 2, the presentation composition module 260includes a presentation formatter 263 configured to define a format ofthe presentation 37 based on presentation values (e.g., consumer values,relationship values, etc.) received at the presentation compositionmodule 260 from the presentation value module 220. Specifically, thepresentation formatter 263 can be configured to define at least aportion of a format of the presentation 37 based on one or morepresentation values.

The format of the presentation can include any portion of the visualconfiguration, audio configuration, non-visual or non-audioconfiguration, and/or so forth of elements (e.g., content, background,references) of the presentation 37. The format of the presentation 37can include, for example, a layout of elements (e.g., content) of thepresentation 37 with respect one another, the style of the presentation37, effects associated with elements of the presentation 37 (e.g.,transitions between elements of the presentation 37), and/or so forth.The format of the presentation 37 can also include temporal aspects ofthe presentation 37 such as, for example, the duration of thepresentation 37, the synchronization of elements (e.g., audio content,visual content) of presentation 37, and/or so forth.

In some embodiments, the presentation 37 can have a static presentationformat (i.e., a static presentation), a dynamic presentation format(i.e., a dynamic presentation), an interactive presentation format(i.e., an interactive presentation), and/or so forth. In someembodiments, one or more portions of the presentation 37 can be a staticpresentation that can be presented for consumption by the consumer D viathe consumer device 240 as, for example, a static webpage, a staticimage, etc. In some embodiments, one or more portions of thepresentation 37 can be a streamed presentation such as a video with orwithout an audio track (e.g., an audio portion). In some embodiments,one or more portions of the presentation 37 can be a dynamicpresentation that can be defined (e.g., modified) as the presentation 37is being consumed (e.g., viewed). In some embodiments, at least aportion of the presentation 37 can include one or more references (e.g.,links, pointers) through which the consumer D (using the consumer device240) can access different content (not shown) than the sharer content 20included in the presentation 37, another presentation (not shown),another portion of the presentation 37, and/or so forth. Thus, one ormore portions of the presentation 37 can be an interactive presentation.

In some embodiments, the presentation 37 can be, or can include, animage file, an audio file, a text file, an executable file, and/or soforth. For example, the presentation 37 can be, or can include, forexample, any type of executable software module such as a computerprogram based on, but not limited to, micro-code or micro-instructions,machine instructions, such as produced by a compiler, code used toproduce a web service, and files containing higher-level instructionsthat are executed by a computer using an interpreter. For example, thepresentation 37 may be implemented using Java, C++, flash, hyper-textmarkup language (HTML) (e.g., HTML5), or other programming languages(e.g., object-oriented programming languages) and development tools.

In some embodiments, the presentation 37 can be, or can be associatedwith, a background process with functionality that is not visible withina display of the consumer device 240. In some embodiments, at least aportion of the presentation 37 can define at least a portion of one ormore applications, or can be associated with, one or more applicationsinstalled at and/or executing at the consumer device 240.

At least a portion of the presentation 37 can have a format definedbased on one or more presentation templates 40 stored in memory 270. Thepresentation template can be selected from the presentation templates 40for use in the presentation 37 by the presentation formatter 263. Insome embodiments, the presentation templates 40 can have a predefinedformat into which at least a portion of the sharer content 39 can beinserted as part of the presentation 37. In some embodiments, thepresentation template can define (e.g., can be used to define) thecontent selected for inclusion and/or the format of a presentation (suchas presentation 37). For example, a presentation template from thepresentation templates 40 can have a field into which a particular typeof sharer content (such as sharer content 39) can be inserted. In someembodiments, the presentation template can be selected for use in apresentation based on one or more presentation values from presentationvalue module 220. More details related to the selection and use ofpresentation templates are described below and in connection with, forexample, FIG. 9.

Also, as shown in FIG. 2, the presentation composition module 260includes a linking module 265 configured to include one or morereferences (e.g., links) to content in the presentation 37 based on oneor more presentation values (e.g., consumer values, relationship values,etc.) received at the presentation composition module 260 from thepresentation value module 220. Specifically, the linking module 265 canbe configured to include references to content other than the sharercontent 39 (e.g., third-party content, content of the consumer D, awebpage). These references can be accessed (e.g., selected, triggered)by the consumer D during consumption of the presentation 37 so that theconsumer D may consume the referenced content. Thus, the consumer D canbe redirected to the other content from the presentation 37. In someembodiments, the reference can be a reference to another presentation(not shown) (e.g., a presentation customized for another consumer (e.g.,another consumer account), a presentation that has not yet beendefined). More details related to the linking module and referenceswithin a presentation are described below and in connection with, forexample FIG. 10.

The presentation composition module 260 can be configured to define atleast a portion of a presentation (such as a portion of presentation 37)based on a single presentation value and/or based on a combination ofpresentation values (stored in for example, the presentation valuedatabase 272). For example the presentation composition module 260 canbe configured define an aspect of a presentation based on a singlerelationship value, or based on a combination of a relationship valueand a consumer value.

FIG. 3 is a diagram that illustrates portions of a presentation valuedatabase 300. The presentation value database 300 can be a presentationvalue database associated with a social media application such aspresentation value database 272 shown in FIG. 2. In this embodiment, thepresentation value database 300 includes a user portion 305, a contentvalue portion 335, and a relationship portion 365.

The user portion 305 of the presentation value database 300 includesuser identifiers 310 representing users of the social media applicationand user values 320 associated with each of the user identifier 310. Forexample, the user identifier U1 (shown in column 310) can represent userU1 (or a social media account of the user). In this embodiment, the userU1 is acting as a consumer (and can be referred to as consumer U1), theuser U4 is acting as a sharer (and can be referred to as sharer U4), andthe users U2 and U3 are acting as third-party users (and canrespectively be referred to as third-party users U2 and U3).

As shown in FIG. 3, user values UV1 and UV2 are associated with consumerU1. User values UV 1 and UV2 can each represent, for example,interactions of consumer U1 with a social media application. As shown inthe user portion 305 of presentation value database 300, some of theusers (as identified in the user identifiers 310 column) are associatedwith the same user values (as identified in the user values 320 column).For example, consumer U1 and sharer U4 (shown in column 310) are bothassociated with the same user value UV2 (shown in column 320), which isrepresented by dashed line Q.

The relationship portion 365 of the presentation value database 300includes relationships 360 representing relationships between the usersidentified in the user portion 305 of the presentation value database300. Also, the relationship portion 365 of the presentation valuedatabase 300 includes relationship values 370 associated with each ofthe relationships 360. For example, a relationship between consumer U1and sharer U4 is shown in the relationship 360 column, and therelationship between consumer U1 and sharer U4 is associated withrelationship value RV2 (shown in column 370). In some embodiments, therelationship value can represent a type of relationship between theusers identified in the relationship 360 column. Although not shown inFIG. 3, in some embodiments, the relationship values (shown in column370) associated with the relationships shown in the relationship value360 column can be the same.

The content portion 335 of the presentation value database 300 includescontent values 350 associated with content 340 of each of the usersidentified in the user identifier 330 column. The content 340 can becontent associated with a social media account at each of the usersidentified in the user identifier 330 column. For example, a socialmedia account of sharer U4 can be associated with content C5 and contentC6 (shown in column 340). As shown in the content portion 335 ofpresentation value database 300 in this embodiment, some of the users(as identified in the user identifiers 330 column) are associated withcontent that has the same content values (as identified in the contentvalues 350 column). For example, consumer U1 and sharer U4 (shown incolumn 330) have content associated with content value CV3 (shown incolumn 350), which is represented by dashed line R. Although not shownin FIG. 3, in some embodiments, the content (shown in column 340)associated with the users represented by the user identifiers 330 columncan be the same.

In some embodiments, the data included in each of the portions of thepresentation value database 300 can be used to associate (e.g., connect,correlate), for example, content, relationships, and/or so forthrepresented by presentation values when defining a customizedpresentation for a consumer. For example, when the consumer U1 requestsaccess to sharer content associated with the sharer U4, the user values320 associated with consumer U1 can be retrieved from the user portion305 of the presentation value database 300, and can be used to define atleast a portion of a presentation customized for the consumer U1 (anaccount of consumer U1). Also, the user portion 305 of the presentationvalue database 300 can be used to determine that consumer U1 and thesharer U4 have a common user value UV2 (represented by dashed line Q).This common user value can be used to define at least a portion of thepresentation in a customized fashion for the consumer U1. Therelationship portion of the database 365 can be used to determine thatthe consumer U1 and sharer U4 have a relationship represented by arelationship value RV2. This relationship value can be used to define atleast a portion of the presentation customized for the consumer U1. Thecontent portion 335 of the presentation value database 300 can be usedto determine that the sharer U4 is associated with content C5 and C6,which can be used in a presentation customized for consumer U1. Also,the content portion 305 of the presentation value database 300 can beused to determine that consumer U1 and sharer U4 have a common contentvalue CV3 (represented by dashed line R). This common content value canbe used to determine that content C6 (which is associated with contentvalue CV3) should be included in at least a portion of the presentationcustomized for the consumer U1.

Referring back to FIG. 2, below are examples of presentation values thatcan be used by the presentation composition module 260 (e.g., thecontent selector 261 of the presentation composition module 260, thepresentation formatter 263 of the presentation composition module) todefine a presentation, such as presentation 37, in response to a requestfrom the consumer D.

For example, the presentation module 200 can be configured to receive arequest for a presentation (such as presentation 37) customized for theconsumer D (an account of consumer D). In response to the request, theconsumer module 221 can be configured to send a consumer value to thecontent selector 261 so that the presentation composition module 260 candefine the presentation in response to the request. The consumer valuecan indicate that consumer D last accessed at least a portion of thesharer content 39 via the social media application 250 at a first time.The content selector 261 can be configured to select only a portion ofthe sharer content 39 for inclusion in the presentation that isassociated with a second time (e.g., has an upload time and/or acreation time) after the first time (as indicated within the consumervalue). Accordingly, the portion of the sharer content 39 may beselected so that the presentation can be limited to the portion of thesharer content 39 that may be new to the consumer D (e.g., not alreadyviewed by the consumer D). The presentation formatter 263 can beconfigured to define a duration of the presentation (or elementsthereof) based on a quantity of the portion of the sharer content 39selected for inclusion in the presentation.

Presentation composition module 260 can be configured to define at leasta portion of a presentation based on a content value indicating thatseveral portions of the sharer content 39 are associated with aparticular contextual category. For example, the presentationcomposition module 260 can be can configured to receive a first contentvalue indicating that sharer content 33 from the sharer content 39 isassociated with a contextual category, and receive a second contentvalue indicating that sharer content 31 from the sharer content 39 isalso associated with the same contextual category. The content selector261 of the presentation composition module 260 can be configured toselect sharer content 33 and sharer content 31 for inclusion in apresentation based on both of these portions of the sharer content 39being associated with the same contextual category. Accordingly, thepresentation formatter 263 can be configured to define a presentationassociated with the contextual category. In some embodiments, thepresentation formatter 263 can be configured to include sharer content31 and 33 in a presentation template from the presentation templates 40that is associated with the contextual category (based on the contentvalues). In some embodiments, the linking module 262 can be configuredto include one or more references in the presentation to content otherthan the sharer content 39 (e.g., content associated with a third-partyuser, a webpage) that is associated with the contextual category (basedon the content values).

Presentation composition module 260 can be configured to define apresentation (such as presentation 37) based on a combination of acontent value and a relationship value. For example, the presentationcomposition module 260 can receive a content value from the contentmodule 224 that indicates that a portion of the sharer content 39 isassociated with a family event (e.g., a wedding, a vacation). Thepresentation composition module 260 can also receive a relationshipvalue from the relationship module 222 indicating that the consumer D isa family member of the sharer C. Accordingly, the presentationcomposition module 260 can be configured to define a presentation thatincludes the portion of the sharer content 39 based on a determinationthat the consumer D, who is related to the sharer C, may be interestedin the portion of the sharer content 39 based on the relationshiprepresented by the relationship value. The nexus between therelationship value and the context value can be defined within (ordetermined using) a presentation value database that can be accessed bythe composition module 260 to make the determination. Specifically, thecontent selector 261 can be configured to select a portion of the sharercontent 39 and/or the presentation formatter 263 can be configured todefine a format of the presentation based on the selected portion of thesharer content 39 in response to the nexus between the content value andthe relationship value.

In some embodiments, the linking module 265 can be configured to includeone or more references in the presentation based on the combination ofthe content value and the relationship value. For example, the linkingmodule 265 can be configured to include a reference to content havingthe same content value when the content was shared by a user having arelationship with the consumer D that is the same as the relationshipbetween the consumer D and the sharer C as represented by therelationship value.

If the presentation composition module 260 receives a relationship valuefrom the relationship module 222 indicating that the consumer D hasnon-family relationship with the sharer C (such as, for example, abusiness relationship with the sharer C), the presentation compositionmodule 260 can be configured to define a presentation that includes aportion of the sharer content 39 that is identified based on a contentvalue as being less personal (e.g., not in a contextual category relatedto a family event, a business-related contextual category). Thus, thepresentation can be defined by the presentation composition module 260based on the lack of a nexus between the relationship value and thecontent value (as defined within a presentation value database that canbe accessed by the composition module 260).

The presentation composition module 260 can be configured to define apresentation (such as presentation 37) based on a consumer valueindicating the frequency that a consumer accesses (e.g., logs onto) thesocial media application 250. For example, a consumer value can indicatethat the consumer D occasionally accesses the social media application250 (e.g., accesses the social media application 250, on average, once amonth or once a week). The content selector 261 can be configured todefine a presentation that includes a portion of the sharer content 39related to significant events of the sharer C over the last month basedon this consumer value. The significant events of the sharer C can bedetermined based on one or more content values identifying portion ofthe sharer content 39 as significant events. If the consumer value hadindicated that the consumer D accesses the social media application 250with a frequency that satisfies a threshold condition (e.g., accessesthe social media application 250 a threshold number of times), thecontent selector 261 can be configured to define a presentation thatincludes a portion of the sharer content 39 related to all of the eventsof the sharer C.

In some embodiments, the presentation composition module 260 can beconfigured to define a presentation based on a consumer value indicatingprior consuming behavior of the consumer such as consumer D. Thepresentation formatter 263 can be configured to define a duration of apresentation based on a consumer value indicating that a consumer, onaverage, closes a presentation after viewing the presentation for lessthan a time period even if the duration of the presentation is longerthan the time period. Accordingly, the presentation formatter 263 can beconfigured to define a presentation for the consumer D that has aduration that is less than or equal to 30 seconds. Similarly, thepresentation composition module 260 can be configured to definepresentation based on a sharer value indicating prior consuming behaviorof a sharer. The presentation formatter 263 can be configured to definea duration of the presentation 37 based on a sharer value indicatingthat the sharer C, on average, consumes presentations longer than 20seconds.

The presentation composition module 260 can be configured to define apresentation based on interactions of a consumer with referencesincluded in a presentation as represented by one more consumer values.For example, in some embodiments, linking module 265 of the presentationcomposition module 260 can be configured to include multiple referenceswithin the presentation 37 in response to a consumer value indicatingthat the consumer D frequently accesses references included within otherpresentations. The references can be references to content of aparticular type (e.g., video content) and/or a particular subject matter(e.g., related to a particular topic) in accordance with a consumervalue indicating that the consumer D may only (or often) accessreferences to content of a type and/or subject matter.

The presentation composition module 260 can be configured to define apresentation based on consumer value indicating that the consumer Dprefers to consume specified content (or presentations). The contentcould be at least a portion of the sharer content 39 (within apresentation) or other content (e.g., webpage). The preference for thecontent (or presentations) can be determined based on, for example,feedback produced using the social media application 250. For example,the presentation composition module 260 can be configured to receive aconsumer value indicating that the consumer D prefers (or frequentlyconsumes) a type of content. The content module 224 can be configured todetermine that the type of content is associated with a specifiedcontextual category, and can be configured to define a content valuerepresenting the specified contextual category. The content selector 261can be configured to select a portion of the sharer content 39 forinclusion in a presentation (such as presentation 37) when the portionof the sharer content 39 that is related to the specified contextualcategory based on a content value associated with the portion of thesharer content 39.

In some embodiments, the presentation formatter 263 can be configured todefine a format of the presentation based on the type of contentpreferred by the consumer D being associated with the same or similarpresentation format. In some embodiments, the linking module 265 can beconfigured to include references in a presentation to content that issimilar to the type of content that is preferred by the consumer D. Insome embodiments, the presentation composition module 260 can beconfigured to define a presentation based on one or more sharer valuesindicating that the sharer C prefers to consume specified content (orpresentations).

The presentation composition module 260 can be configured to define apresentation (such as presentation 37) based on one or more third-partyvalues. For example, a third-party value indicating that manythird-party users have been accessing and/or sharing (e.g., posting)content associated with a specified topic, represented by a contentvalue, can be received at the presentation composition module 260 fromthe presentation value module 220. The content selector 261 of thepresentation composition module 260 can be configured to select aportion of the sharer content 39 for inclusion in a presentation (suchas presentation 37) based on a combination of the third-party value andcontent value. In some embodiments, the third-party value can be definedbased on results from, for example, a search engine that are associatedwith a general population that may not include the sharer C and/or theconsumer D. For example, the third-party value can be an indicator of anumber of hits for a particular term using a search engine and/or awebsite page rank.

The presentation composition module 260 can be configured to define apresentation based on content shared by the consumer D when acting as asharer. For example, the consumer D may post content via the socialmedia application 250 to a social media account of the consumer D. Thecontent posted by the consumer D can be analyzed by the content module224 to determine that the posted content is associated with a particularcontextual category, and can be configured to define a content valuerepresenting the particular contextual category. Accordingly, thepresentation composition module 260 can be configured to define apresentation that includes a portion of the sharer content 39 that has acontent value that is the same as or similar to the content valueassociated with the content posted by the consumer D.

In some embodiments, the content posted by the consumer can be analyzedby the presentation formatter 263 to determine a format associated withthe content posted by the consumer D. The presentation formatter 263,when defining a presentation, can use a format that is similar to theformat associated with the content posted by the consumer D.

In some embodiments, the content posted by the consumer D can beanalyzed by the linking module 265 to determine whether or notreferences are associated with the content posted by the consumer D. Thelinking module 265 can be configured to include references in one ormore presentations customized for the consumer D that include referencesthat are similar to the references associated with the content posted bythe consumer D.

In some embodiments, the presentation composition module 260 can beconfigured to define a presentation based on a presentation valueindicating prior consuming or sharing behavior of a sharer (such assharer C). The presentation formatter 263 can be configured to define aformat of the presentation 37 customized for the consumer D based on asharer value indicating that the sharer C prefers to accesspresentations having the same format.

In some embodiments, the presentation composition module 260 can beconfigured to define a presentation that is different than a previouslydefined presentation. For example, if a first subset of the sharercontent 39 has already been included in a first customized presentationfor the consumer D in response to a first request for a presentationtriggered by the consumer D, the content selector 261 can be configuredto include a second subset of the sharer content 39 in a secondcustomize presentation for the consumer D (or another consumer) inresponse to a second request for a presentation triggered by theconsumer D (or another consumer). In some embodiments, the second subsetof the sharer content 39 can be defined as a different or mutuallyexclusive subset from the first subset of the sharer content 39. In someembodiments, the presentation formatter 263 of the presentationcomposition module 260 can be configured to define a customizedpresentation for the consumer D (or another consumer) with a format thatis different than a format of a previously customize presentation forthe consumer D (or another consumer). In some embodiments, the linkingmodule 265 of the presentation composition module turns 60 can beconfigured to exclude one or more references from future presentationsif the reference(s) were not accessed (e.g., were ignored) in previouspresentations.

In some embodiments, the presentation composition module 260 can beconfigured to define a presentation based on a quality (e.g., aresolution, a signal integrity, etc.) of the content. For example, thecontent selector 261 can be configured to select a first portion of thesharer content 39 rather than a second portion of the sharer content 39based on a content value indicating that the first portion of the sharercontent 39 has a lower quality than the second portion of the sharercontent 39.

As shown in FIG. 2, the presentation module 200 includes a conflictresolution module 207. The conflict resolution module 207 is configuredto resolve conflicts between presentation values based on, for example,a rules-based algorithm, priority values associated with each of thepresentation values, and/or so forth. Conflicts can include, forexample, selection of a first subset of sharer content based on a firstpresentation value and selection of a second subset of sharer contentdifferent from the first subset of sharer content based on the secondpresentation value. In some embodiments, the selection of the firstsubset of sharer content can be mutually exclusive with the selection ofthe second subset of sharer content. Accordingly, a conflict related tothe selection of a subset of the sharer content can arise based on thefirst presentation value and the second presentation value.

For example, the conflict resolution module 207 of the presentationcomposition module 260 can be configured to resolve a conflict between acontent value and a relationship value using a rules-based algorithm.Thus, the conflict resolution module 207 can be configured to triggerthe presentation composition module 260 to define a presentation basedon the content value or the relationship value using a rules-basedalgorithm. In some embodiments, conflicts between presentation valuescan be resolved by the conflict resolution module 207 based on, forexample, a priority value associated with each of the content values.For example, conflict resolution module 207 can be configured to triggerthe presentation composition module 260 to define a presentation basedon consumer values having priority (as represented by a priority value)over sharer values and relationship values (which may be associated withlower priorities as represented by priority values), and sharer valueshaving priority (as represented by a priority value) over content values(which may be associated with a lower priority as represented by apriority value).

As shown in FIG. 2, the presentation module 200 includes a notificationmodule 205. In some embodiments, the notification module 205 can beconfigured to send an indicator to the consumer D via the consumerdevice 240 that a presentation has been customized for consumption bythe consumer D (via an account of consumer D). In some embodiments, theindicator can be presented to the user via the social media userinterface 15. In some embodiments, the notification module 205 can beconfigured to provide an option to consume or ignore the customizedpresentation. In some embodiments, the notification module 205 can beconfigured to send an indicator (e.g., send an indicator via the socialmedia user interface 15) to the sharer C via the sharer device 210 thata presentation has been customized for consumption by the consumer D viathe consumer device 240.

In some embodiments, the notification module 205 can be configured toprompt the sharer C to share content for inclusion in one or morepresentations based on one or more presentation values. For example, thenotification module 205 can be configured to prompt the sharer C toshare content associated with a particular contextual category based onone or more preferences for that particular contextual categoryrepresented within consumer values associated with one or more consumers(such as consumer D).

As shown in FIG. 2, the sharer database 274 is configured to storepreferences 50. These preferences 50 can be preferences of the sharer Cthat can be used to define at least a portion of a presentation such aspresentation 37. For example the preferences 50 can indicate thatcertain presentation value should be used (or certain presentationvalues should not be used) to define the presentation 37. In someembodiments, the preferences 50 can indicate that the presentation 37should be defined with (or cannot be defined with) specific portions ofthe sharer content 39 and/or that the presentation 37 should be definedwith (or cannot be defined with) a specified format (e.g., specifiedduration, a specified presentation template, etc.).

Although not shown in FIG. 2, in some embodiments, preferences of theconsumer D can be used to define a presentation for the consumer D. Thepreferences of the consumer D can be similar to the preferences of thesharer described in connection with preferences 50.

In some embodiments, one or more portions of the components shown in thesocial media application 250 in FIG. 2 can be, or can include, ahardware-based module (e.g., a digital signal processor (DSP), a fieldprogrammable gate array (FPGA), a memory), a firmware module, and/or asoftware-based module (e.g., a module of computer code, a set ofcomputer-readable instructions that can be executed at a computer). Forexample, in some embodiments, one or more portions of the presentationmodule 200 can be, or can include, a software module configured forexecution by at least one processor (not shown). In some embodiments,the functionality of the components can be included in different modulesand/or components than those shown in FIG. 2. For example, although notshown, the functionality of the presentation value module 220 can beincluded in a different module than the presentation value module 220,or divided into several different modules.

The presentation value database 272 and/or sharer database 274 shown inFIG. 2 can be repositories within which data associated with users (suchas sharer C) is stored. In some embodiments, the presentation valuedatabase 272 and/or the sharer database 274 can be divided into morethan one database or consolidated with other databases (e.g., a generaldatabase) of the social media application 250.

Although not shown, in some embodiments, the memory 270 can beimplemented as more than one memory component (e.g., more than onerandom-access memory (RAM) component or disk drive memory) associatedwith the social media application 250. In some embodiments, the memory270 can be a database memory. In some embodiments, the memory 270 canbe, or can include, a non-local memory. For example, the memory 270 canbe, or can include, a memory shared by multiple devices (not shown). Insome embodiments, the memory 270 can be associated with a server device(not shown) within a network and configured to serve the social mediaapplication 250.

Although not shown in FIG. 2, in some embodiments, the presentationmodule 200 can be configured to include content other than sharercontent 39 in one or more presentations customized for one or moreconsumers (one or more consumer accounts). For example, the presentationmodule 200 can be configured to include third-party content, consumercontent, content from social media accounts of a multiple sharers (thatmay be related as indicated by relationship values), etc. in thepresentation 37 customized for the consumer D based on one or morepresentation values.

FIG. 4 is a diagram that illustrates a timeline of consumer interactions440, sharer content sharing 420, and execution of a presentation 460.The timeline illustrates that sharer content is shared (e.g., posted,uploaded) by a sharer using a social media application at times T1, T2,T3, and T4. The timeline also illustrates consumer interactions at timesVA, VB, VC, and VD with (e.g., using) the social media application. Atleast a portion of presentation 460 is defined in response to a requestfor access to sharer content triggered by a consumer and received attime T5. The presentation 460 is sent to a consumer device through whichthe consumer may consume the presentation 460 during a time periodbetween times T6 and T7. In some embodiments, the presentation 460 canbe defined by a presentation module such as presentation module 200shown in FIG. 2.

The presentation 460 can be defined by a presentation module based onconsumer values representing the consumer interactions 440 with thesocial media application. The consumer values representing the consumerinteractions at times VA, VB, VC, and VD can be respectively referred toas consumer values VA, VB, VC, and VD. The consumer values can bedefined by, for example, a consumer module of a presentation valuemodule such as consumer module 221 of presentation value module 220shown in FIG. 2.

In this embodiment, the consumer interactions at times VA and VD eachrepresent times at which a consumer has accessed the social mediaapplication (e.g., accessed by logging into the social mediaapplication) to consume content associated with social media accounts ofusers other than the sharer. The consumer interaction at time VBrepresents a time at which the consumer has accessed sharer contentassociated with a social media account of the sharer using the socialmedia application. The consumer value VB can indicate that the consumeraccessed sharer content at time VB. Finally, the consumer interaction attime VC represents a time that content is shared by the consumer (whenacting as a sharer) to a social media account of the consumer. Theconsumer value VC can indicate the type of content shared by theconsumer at time VC.

The presentation 460 can be defined by the presentation module toinclude only the sharer content shared by the sharer at times T3 and T4.The sharer content included in the presentation 460 can be limited tothe sharer content shared at times T3 and T4 because the consumer lastaccessed content of the sharer at time VB (after time T2) as indicatedby consumer value VB. The presentation 460 can also be defined by thepresentation module to include sharer content that may be related to thecontent consumed by the consumer at times VA and VD, as well as thecontent shared by the consumer at time VC, as indicated by consumervalues corresponding with their consumer interactions at these times.

As shown in FIG. 4, the presentation 460 is defined by multiple consumervalues associated with consumer interactions with the social mediaapplication prior to receipt of a request to access the sharer content.In some embodiments, the consumer values associated with the consumeractions 440 can be defined and stored in a presentation value database(such as presentation value database 272 shown in FIG. 2) where they canbe efficiently accessed in response to a request for sharer contentbeing received. Although not shown in FIG. 4, in some embodiments thepresentation 460 could be defined based on interactions of a third-partyuser with the social media application.

In some embodiments, only a portion of available consumer values may beconsidered for use in defining a presentation such as presentation 460.For example, only consumer values associated with consumer interactionsoccurring within a time frame may be considered for use in defining apresentation such as presentation 460. In some embodiments, only acertain number of consumer values may be considered for use in defininga presentation. In some embodiments, only consumer values of aparticular type may be considered by presentation module.

FIG. 5 is a diagram that illustrates stages related to defining acustomized presentation for a consumer based on sharer content. Thecustomized presentation can be defined by a presentation module of asocial media application. As shown in FIG. 5, the stages include apre-request activity stage 510, a request stage 520, a presentationvalue retrieval stage 530, a content retrieval stage 540, a presentationcomposition stage 550, and a presentation execution stage 560.

During the pre-request activity stage 510, one or more presentationvalues can be defined. For example, consumer values representinginteractions of a consumer with a social media application can bedefined, content values associated with content shared by a sharer,third-party values representing interactions of a third-party with thesocial media application, and/or so forth can be defined during thepre-request activity stage 510. In some embodiments, for example, one ormore relationship values representing the relationship between thesharer and the consumer can be defined and stored in a database (e.g., apresentation value database) where they can be retrieved.

During the request stage 520, a request for a presentation can bedefined and received in response to a consumer requesting access tosharer content via the social media application. In some embodiments,multiple requests can be defined and/or received in parallel. In someembodiments, the consumer can specifically request, via a user interfaceassociated with the social media application, that a presentationcustomized for the consumer (an account of the consumer) be defined bythe presentation module. In some embodiments, a notification module,such as notification module 205 shown in FIG. 2, can be configured tonotify a sharer that a request for a customized presentation for theconsumer has been received.

During the presentation value retrieval stage 530 one or morepresentation values that can be used to define a presentation can beretrieved from, for example, a presentation value database (such aspresentation value database 272 shown in FIG. 2). In some embodiments,the presentation values can be retrieved by presentation value modulesuch as presentation value module 220 shown in FIG. 2. In someembodiments, only presentation values associated directly with theconsumer such as consumer values and relationship values can beretrieved and used to define a presentation. In some embodiments, onlypresentation values that are allowed, based on a preference of a sharer,for use in defining a presentation may be retrieved. In someembodiments, during the presentation value retrieval stage 530, one ormore presentation values can be defined. In some embodiments, during thepresentation value retrieval stage 530, conflicts between presentationvalues can be resolved a conflict resolution module such as conflictresolution module 207 shown in FIG. 2.

During the content retrieval stage 540, one or more presentation valuescan be used to select sharer content (or other content) for inclusion ina presentation customized for the consumer. In some embodiments, thesharer content can be selected by a content selector such as contentselector 261 shown in FIG. 2.

During the presentation format stage 550, one or more presentationvalues can be used to define a customized format of the presentation forthe consumer. The format of the presentation can be defined based on thesharer content that is selected. In some embodiments, at least a portionof the content retrieval stage 540 and at least a portion of thepresentation format stage 550 can be performed at the same time.

During the presentation execution stage 560, at least a portion of thepresentation is sent for consumption by the consumer using, for example,a consumer device. In some embodiments, one or more functions associatedwith the stages shown in FIG. 5 can be performed iteratively. Forexample, a first portion of the presentation can be defined during thecontent retrieval stage 540 and during the presentation format stage 550by a presentation module based on a first set of presentation values.While the first portion of the presentation is sent for consumption bythe consumer during the presentation execution stage 560, a secondportion of the presentation can be defined during the during the contentretrieval stage 540 and during the presentation format stage 550 by thepresentation module based on a second set of presentation values.

In some embodiments, the stages (or a portion thereof) can be performedin a different order than that shown in FIG. 5. For example, one or morepresentation values may be retrieved during another presentation valueretrieval stage (not shown) between the content retrieval stage 540 andthe presentation format stage 550.

FIG. 6A is a diagram that illustrates a social network 600 includingmultiple users. The social network 600 includes several users (or useridentifiers of user accounts) represented by circles. Specifically, thesocial network includes users V1 through V6. For purposes of thisexample, user V1 is acting as a consumer that has requested access tocontent of user S1, acting as a sharer, and will be referred to asconsumer V1. The user S1 will be referred to as sharer S1. In thisembodiment, the consumer V1 is highlighted with horizontal lines and thesharer S1 is highlighted with vertical lines. Relationships between theusers are represented by lines between the circles. The social network600 shown in FIG. 6A is targeted to (e.g., originates with sharer S1)and can be a portion of a larger social network (not shown).

As shown in FIG. 6A, the sharer S1 and the consumer V1 both haverelationships with several of the other users. For example, the sharerS1 has a relationship with user V2 and a relationship with user V4.Consumer V1 also has a relationship with user V2 and a relationship withuser V4. As shown in FIG. 6A, the sharer S1 has relationships with usersthat the consumer V1 does not also have a relationship. Specifically,the sharer S1 has a relationship with user V5 and the consumer V1 doesnot also have a relationship with user V5.

In some embodiments, the relationships can be defined between the usersbased on a user accepting a relationship with another user (using asocial media application). For example, when sharer S1 authorizes userV4 (using a social media application) to access content associated withsharer S1, a relationship between sharer S1 and user V4 can be definedand the relationship between the sharer S1 and the user V4 can beincluded in the social network 600.

FIG. 6B is a diagram that illustrates a database 605 with informationassociated with the relationships within the social network 600 shown inFIG. 6A. The database 605 can be, or can be included within, apresentation value database. As shown in FIG. 6B, the database 605includes user identifiers 610 representing at least some of the usersthat are shown in FIG. 6A. For example, a user identifier associatedwith sharer S1 and consumer V1 are shown in the user identifiers 610column. The user identifiers 610 can represent user identifiers of auser account of a social media application.

The database 605 also includes relationship values 630 representingcharacteristics of a relationship between the users identified by theuser identifier 610 and users identified by the relationship targetidentifiers 620. The relationship characteristics that are representedwithin the database 605 are relationship strength values 632 andrelationship type values 634. The relationship strength values 632 canrepresent a relative quantity of common relationships between the usersidentified within the user identifiers 610 column and the usersidentified within the relationship target identifiers 620 column. Therelationship strength values shown in the relationship strength value632 column are either “Tier0”, “Tier1”, “Tier2”, or no value(represented by a line). The relationship type values 634 can representa type of relationship between the users identified within the useridentifiers 610 column and the users identified within the relationshiptarget identifiers 620 column. The relationship type values shown in therelationship type values 634 column are either “Family”, “Acquaintance”,“Business”, or no value (represented by a line). Although not shown inFIG. 6B, in some implementations, additional types of relationships suchas a friend relationship can be included.

For example, as shown in FIG. 6B, the sharer S1 has a relationship withthe consumer V1 that has a “Tier2” relationship strength value (shown incolumn 632) and has a “Family” relationship type value (shown in column634). The relationship between the sharer S1 and the consumer V1 can becharacterized as a “Tier2” relationship because the sharer S1 and theconsumer V1 also have relationships with two common users—user V2 anduser V4. Specifically, sharer S1 has a relationship with user V4 andconsumer V1 also has a relationship with user V4. Also, sharer S1 has arelationship with user V2 and consumer V1 also has a relationship withuser V2. This is contrasted with the “Tier1” relationship between sharerS1 and user V2, which is characterized as such because sharer S1 anduser V2 have a relationship that is common with one user—consumer V1.

In this embodiment, the relationship type value can be defined by theconsumer V1 and/or the sharer S1 when a relationship is defined betweenthe consumer V1 and the sharer S1. Thus, the consumer V1 can beidentified (using a social media application) by the sharer S1 as havinga family relationship with the sharer S1. In some embodiments, arelationship type value can be determined based on analysis ofinteractions between the consumer V1 and the sharer S1.

As shown in FIG. 6A, user V3 and sharer S1 do not have directrelationship. Because there is no relationship between the sharer S1identified within the user identifiers 610 column and user V3 identifiedwithin the relationship target identifiers 620 column, the database 605shown in FIG. 6B does not illustrate a relationship strength value or arelationship type value in the row associated with user V3.

The relationship values 630 shown in FIG. 6B can be used by, forexample, a presentation module to define or more presentationscustomized for a consumer (an account of the consumer). For example, acontent selector (such as content selector 261 shown in FIG. 2) can beconfigured to select a subset of sharer content associated with sharerS1 for inclusion in a presentation for consumer V1 based on the “Family”relationship type value shown in column 634. The content selector can beconfigured to select a different subset of sharer content associatedwith sharer S1 for inclusion in a presentation for user V2 based on the“Acquaintance” relationship type value shown in column 634.

In some embodiments, relationships that are not directly connected withsharer S1 can be used to define a customized presentation for theconsumer V1. For example, interactions between consumer V1 and user V3can inform customization of the presentation for the consumer V1.Accordingly, the relationship between consumer V1 and user V3, andpresentation values that can be associated with the relationship betweenconsumer V1 and user V3 can be used to customize a presentation forconsumer V1.

In some embodiments, relationships that are not directly connected withsharer S1 (or the target of a social network), can be referred to asattenuated relationships. Relationships that are directly connected withsharer S1 can be referred to as first-degree relationships. For example,the relationship between sharer S1 and consumers V1, V2, V4, and V5 canbe referred to as a first-degree relationship. Relationships between S1and users that are not directly connected to S1 but that are directlyconnected to users that have a first-degree relationship with sharer S1can be referred to as second-degree relationships. For example, therelationship between S1 and user V3 can be referred to as asecond-degree relationship because consumer V1 is directly related tosharer S1, and consumer V3 is directly related to consumer V1, butconsumer V3 is not directly connected to sharer S1. In some embodiments,presentation values associated with higher degree relationships (e.g.,third-degree relationships) can be used to define a presentation for aconsumer.

In some embodiments, information about the relationships within thesocial network 600 can be defined as changes to the social networkoccur. For example, when a new relationship is defined between one userand the sharer S1, information about the new relationship can be defineand represented within the database (by a relationship module).

FIG. 7 is a diagram that illustrates defining of a portion 762 of apresentation 760 within a composition time window 76 based on sharercontent stored in a sharer database 774. The entire presentation 760,including the portion 762 of the presentation 760, is defined by apresentation module 700. As shown in FIG. 7, time is increasing to theright, and the presentation 760 is a presentation that can be streamed(e.g., streamed as a video) to a consumer device.

As shown in FIG. 7, the sharer content included in the shared database774 is included in two different contextual categories—contextualcategory CCA and contextual category CCB. Image content 701 through 703,textual content 706, audio content 707, and metadata content 708 areincluded in contextual category CCA, and image content 703 through 705and textual content 706 are included in contextual category CCB. In someembodiments, the contextual categories, which can be represented bycontent values, can represent a vacation category, a scenery category, afamily event category (e.g., a wedding event category), a businesscategory, an animal category, and/or so forth.

As shown in FIG. 7, image content 703 and textual content 706 areincluded in both the contextual categories. In some embodiments,contextual categories can be mutually exclusive. Thus, sharer contentincluded in a first contextual category may not be included in a secondcontextual category because the second contextual category is exclusiveof the first contextual category.

In this embodiment, the sharer content is divided into the two differentcategories by the presentation module 700. Specifically, the sharercontent can be divided into the contextual categories by a contentmodule (not shown) of the presentation module 700. In some embodiments,the presentation module 700 can be configured to determine that aportion (e.g., image content 701 through 703) of the sharer content isto be included in a contextual category (e.g., contextual category CCA)based on an analysis of the subject matter of the portion of the sharercontent and/or based on metadata associated with the portion of thesharer content.

As shown in FIG. 7, image content 701 is associated with metadata 708.The metadata 708 can describe an aspect of the image content 701. Forexample, the metadata 708 can indicate that the image content 701 wasuploaded from and/or created at a geo-location, uploaded at a time, isrelated to other sharer content, and/or so forth. In some embodiments,the presentation module 700 can be configured to associate image content701 to contextual category CCA based on the metadata 708 associated withimage content 701. Similarly, image content 703 is associated withtextual content 706 that can describe an aspect of the image content703.

In some embodiments, one or more portions of the sharer content can beincluded in a contextual category as specified by the sharer of thesharer content. For example, a sharer can associate image content (e.g.,image content 71) as being part of a contextual category. In someembodiments, the sharer can identify the image content as being part ofthe contextual category when the image content is being shared (e.g.,uploaded) via a social media application.

In this embodiment, the composition time window 76 is a slidingcomposition time window that indicates the portion of the presentation760 that is being defined. The presentation 760 is defined using asliding composition time window (such as composition time window 76) sothat portions of the presentation 760 can be dynamically defined asother portions of the presentation (previously defined) are beingconsumed by a consumer. Accordingly, portions of the presentation 760can be sent to a consumer for consumption before the entire presentation760 has been defined to reduce delay (e.g., minimize delay) between arequest for the presentation 760 and actual sending of the presentation760 for consumption.

As shown in FIG. 7, the presentation module 700 is configured to definethe portion 762 of the presentation 760 that is included within thecomposition time window 76 that has a fixed duration CT1. Thecomposition time window 76 is used to illustrate the portion of thepresentation 760 that is being defined by the presentation module 700.After the portion 762 of the presentation 760 has been defined by thepresentation module 700, the portion 762 of the presentation 760 can besent to a consumer for consumption. The presentation module 700 can beconfigured to define a portion 763 of the presentation 760 having aduration CT2 corresponding to the fixed duration CT1 of the compositiontime window 76 while the portion 762 of the presentation 760 is beingconsumed by the consumer. Although not shown in FIG. 7, the compositiontime window 76 can be associated with the portion 763 of thepresentation 760 as portion 763 the presentation 760 is being defined.

In some embodiments, portions of the presentation 760 can be defineduntil the presentation 760 is closed (or until content that can beincluded in the presentation 760 is exhausted). In some embodiments, thepresentation 760 can be dynamically defined based on interactions of aconsumer with the presentation 760. For example, after the portion 762of the presentation 760 has been defined by the presentation module 700and is being consumed by a consumer, an interaction of the consumer withthe portion 762 of the presentation 760 can be detected. The portion 763of the presentation 760 can be defined (or modified) based on theinteraction of the consumer with the portion 762 of the presentation760. Thus, the portion 763 of the presentation 760 can be customized forthe consumer based on the interaction of the consumer with the portion762 of the presentation 760. Specifically, if a consumer interacts withimage content 702 included in the portion 762, the portion 763 can bedefined with a portion of the sharer content included in sharer database774 that is similar to image content 702 (such as image content 703which is included in the same contextual category CCA as image content702). Additional details related to interactively and/or dynamicallydefining a presentation are described in connection with, for example,FIGS. 10 and 11.

As shown in FIG. 7, the portion 762 of the presentation 760 that hasbeen defined includes sharer content exclusively from contextualcategory CCA. The sharer content can be exclusively selected fromcontextual category CCA for inclusion in the portion 762 of thepresentation 760 based on one or more presentation values (e.g.,consumer values, relationship values). In some embodiments, a durationP10 of the presentation 760 can be defined based on one or morepresentation values.

As shown in FIG. 7, the portion 762 of the presentation 760 includesboth visual content as well as audio content. In some embodiments, theformat of visual content and the format of the audio content can bedefined based on one more presentation values. For example, imagecontent 701 and image content 702 can be selected for inclusion in thepresentation 760 (rather than image content 703) based on a consumervalue indicating that the consumer of the presentation 760 haspreviously accessed image content similar to image content 701 and imagecontent 702. In some embodiments, the inclusion of image content 702before image content 71 can be determined based on a consumer valueassociated with the consumer of the presentation 760. Also, the audiocontent 707 can be included in the presentation 760 based on a consumervalue indicating that the consumer of the presentation 760 often listensto audio content similar to audio content 707. In this embodiments,metadata content 708, which is typically not visible (in contrast to thetextual content 706), is converted into visual metadata content that canbe viewed within the presentation 760 by the presentation module 700.

FIG. 8 is a flowchart that illustrates a method for definingpresentation. As shown in FIG. 8, a request, associated with a consumer,to access a plurality of sharer content using a social media applicationis received. (block 800) The sharer content can be associated with asharer account (via a sharer device) using the social media application.The social media application can be any type of application configuredto facilitate users of the social media platform to interact with and/orshare content. The social media application can be associated with aplatform that can be, or can include, any type of hardware and/orsoftware configured to facilitate users of the social media applicationto interact with and/or share content. In some embodiments, the requestcan be received at the social media application.

A plurality of consumer values are retrieved in response to the request(block 810). The plurality of consumer values can represent a pluralityof interactions with the social media application via the consumeraccount during a time period occurring before the request is received.In some embodiments, the plurality of consumer values can be defined byat least a portion of the presentation module. In some embodiments, theplurality of consumer values can be retrieved from a presentation valuedatabase.

A subset of sharer content from the plurality of sharer content isselected based on the plurality of consumer values (block 820). Thesharer content can include content shared by the sharer (via the shareraccount) or any content associated with a social media account of thesharer. Although not shown in FIG. 8, in some embodiments, the subset ofsharer content can be selected from the plurality of sharer contentbased on a variety of presentation values including the plurality ofconsumer values. In some embodiments, the subset of sharer content canbe associated with a specified contextual category, can be associatedwith a time frame, and/or so forth.

A portion of a presentation customized for the consumer based on theplurality of consumer values and using the selected subset of sharercontent is defined (block 830). In some embodiments, a format of thepresentation can be customized for execution via the consumer accountbased on the plurality of consumer values. In some embodiments, thepresentation can be customized using a presentation template, which isselected based on one or more presentation values including the consumervalues.

FIG. 9 is a block diagram that illustrates a presentation template 94retrieved from a memory 970 associated with a social media application950. In this embodiment, the presentation template 94 is selected by apresentation formatter 963 from presentation templates 90 (also can bereferred to as a set or as a group of presentation templates) stored inthe memory 970. In some embodiments, the set of presentation templates90 can be referred to as a library of presentation templates.

As shown in FIG. 9, the presentation template 94 includes severalfields, fields 962 through 966, into which at least a portion of sharercontent can be included as part of a presentation customized for aconsumer. A request for the presentation can be triggered by theconsumer when accessing the sharer content using the social mediaapplication 950.

Although not shown in FIG. 9, the fields of the presentation template 94can be configured for a specific type of content. For example, field 962can be configured to receive image content and field 966 can beconfigured to receive audio content. In some embodiments, thepresentation template 94 can have a specified style, a visual theme, acontextual theme, and/or so forth. For example, a background imageassociated with presentation template 94 can be configured for aparticular visual or contextual theme. In some embodiments, one or moreof the presentation templates 90 can have, or can include, for example,fields for animated moving images, a slideshow format, bullet points,textual themes, a chronologically-based format, and/or so forth.

The presentation formatter 963 can be configured to select thepresentation template 94 from the presentation templates and 90 based onone or more presentation values stored in a presentation value database972. For example, the presentation template 94 can be related to a firstcontextual category and the other presentation templates (i.e.,presentation templates 91 through 93) can be related to a secondcontextual category. In response to a request for a presentationcustomized for a consumer, the presentation formatter 963 can beconfigured to receive a consumer value that indicates that the consumerhas previously viewed content related to the first contextual categorybut has not previously viewed content related to the second contextualcategory. Based on this consumer value, the presentation formatter 963can be configured to select the presentation template 94 from the set ofpresentation templates 90 as a basis for a format of the presentationcustomized for the consumer.

As another example, the presentation template 94 can be used to define aformat of a presentation with a specified visual style. In response to arequest for a presentation customized for a consumer, the presentationformatter 963 can be configured to receive a consumer value indicatingthat the consumer prefers viewing content or sharing content having thespecified visual style. Based on this consumer value, the presentationformatter 963 can be configured to select the presentation template 94from the set of presentation templates 90 as a basis for a format of thepresentation customized for the consumer.

In some embodiments, one or more of the presentation templates 90 can becustomized for a particular consumer. For example, at least a portion ofthe presentation template 94 can be defined by a sharer for use for apresentation for a consumer, and the presentation template 94 definedfor the consumer can be stored in the memory 970 for later retrieval.The presentation template 94, even if customized for the consumer, canbe used to define a customized presentation for another consumer.

FIG. 10 is a block diagram that illustrates interactive presentationsthat can be defined using the social media application. As shown in FIG.10, presentation progression direction is to the right. Presentation1060 is an interactive presentation that includes a reference 1062, andpresentation 1070 is also an interactive presentation that includes areference 1072. Presentation 1080 is a presentation that does notinclude a reference to another presentation (and thus is not aninteractive presentation). In this embodiment, presentation 1060 is apresentation defined with a customized format and content (not shown)for a consumer in response to a request for a presentation from theconsumer. In some embodiments, presentation 1060, presentation 1070, andpresentation 1080 can be portions of presentations.

In this embodiment, the reference 1062 is a link to presentation 1070,and the reference 1072 is a link to presentation 1080. Accordingly, whenthe reference 1062 is accessed (e.g., selected, triggered), for example,by a consumer during execution (e.g., consumption) of the presentation1060, execution of the presentation 1070 is triggered (as represented byarrow R1). In some embodiments, when execution of the presentation 1070is triggered, execution of the presentation 1060 is suspended orterminated. Also, when the reference 1072 is access, for example, by aconsumer during execution of the presentation 1070, execution of thepresentation 1080 is triggered (as represented by arrow R2). In someembodiments, when execution of the presentation 1080 is triggered,execution of the presentation 1070 is suspended or terminated. Thus,accessing the references within the presentations causes redirection toanother presentation (or portion thereof).

For example, at least a portion (e.g., a portion within a compositiontime window) of presentation 1060 can be defined in response to arequest for a presentation customized for a consumer. The presentation1060 can be sent for consumption by the consumer, and the consumer canaccess reference 1062 during execution (e.g., consumption) of thepresentation 1060. In response to accessing the reference 1062, thepresentation 1060 can be suspended and execution of presentation 1070can be triggered. In some embodiments, presentation 1070 can be definedin response to the reference 1062 being accessed so that thepresentation 1070 can be executed. At the end of execution of thepresentation 1070, execution of presentation 1060 can be resumed (asrepresented by arrow R3). In some embodiments, execution of presentation1060 can be resumed at a portion of the presentation 1060 including thereference 1062, or execution of presentation 1060 can be resumed at adifferent portion of the presentation 1060. Alternatively, reference1072 included in presentation 1070 can be accessed by the consumerduring execution of presentation 1070. In response to accessing thereference 1070, execution of the presentation 1070 can be suspended andexecution of presentation 1080 can be triggered (as represented by arrowR2). At the end of presentation 1080, execution of presentation 1060 canbe resumed at a portion of the presentation 1060 including the reference1062 (or a different portion) (as represented by arrow R4), or executionof presentation 1070 of a portion of the presentation 1070 including thereference 1072 (or a different portion) can be resumed (as representedby arrow R5).

In some embodiments, one or more of the presentations can be dynamicallydefined as a consumer navigates through each of the presentations. Thus,only portions of the presentations that are being consumed or triggeredfor consumption may be defined. In some embodiments, presentation 1060,presentation 1070, and presentation 1080 can each be portions of asingle interactive presentation that is dynamically defined. Thus,presentation 1060, presentation 1070, and presentation 1080 cancollectively define a single presentation. In some embodiments, one ormore of the presentations can be interactively consumed. For example,consumption of the presentation can be paused, consumed again, stopped,stored for later consumption, tagged, forwarded to another consumer,and/or so forth.

In some embodiments, the reference 1062 can be associated with aspecified sharer content of the presentation 1060, and the presentation1070 can be additional sharer content (or other content (e.g.,third-party content, consumer content)) associated with the specifiedsharer content. For example, the reference 1062 in the presentation 1060can be associated with sharer content that is included in a specifiedcontextual category. The presentation 1070 can be customized for theconsumer with additional content (e.g., sharer content, third-partycontent) included in the specified contextual category. Thus, theconsumer of the sharer content, if particularly interested in sharercontent associated with the contextual category, can be redirected topresentation 1070 that includes additional content associated with thespecified contextual category by accessing the reference 1062.

In some embodiments, one or more references can be included in one ormore presentations by a linking module such as linking module 265 shownin FIG. 2. A linking module can be configured to include one or morereferences in a presentation based on one or more presentation valuesstored in, for example, a presentation value database. For example, inresponse to a request for a presentation for a consumer, a presentationmodule can be configured to define a presentation that includes sharercontent and/or a format customized for the consumer. The sharer contentcan be associated with a specified contextual category as represented bya content value. Based on the content value, a linking module can beconfigured to include a reference in the presentation to additionalcontent associated with the specified contextual category.

In some embodiments, one or more references can be configured to triggerexecution of another portion of a presentation. For example, a referenceincluded in the first portion of the presentation that is accessedduring execution (e.g., consumption) of the first portion of thepresentation can trigger execution of a second portion of thepresentation (that may or may not be adjacent to the first portion ofthe presentation). Execution of the first portion of the presentationcan be suspended in response to the reference being accessed. In someembodiments, triggering of execution of the second portion of thepresentation can be triggered in a fashion that a consumer thepresentation may not perceive that the first portion of the presentationhas been suspended and that execution of a new portion of thepresentation (i.e., the second portion of the presentation) has beeninitiated. Specifically, when the reference included in the firstportion of the presentation is accessed, the second portion of thepresentation (which is started in response to the reference beingaccessed) can be combined using a transition (e.g., a smooth transition)with the first portion of presentation that is suspended.

FIG. 11 is a flowchart that illustrates a method for interactivelydefining a presentation. As shown in FIG. 11, a request, triggered via aconsumer account, to access a plurality of sharer content using a socialmedia application is received. (block 1110) The sharer content can beassociated with a sharer account (by a sharer) via a sharer device usingthe social media application. The social media application can be, orcan include, any type of hardware and/or software configured tofacilitate users of the social media application to interact and/orshare content. In some embodiments, the request can be received at thesocial media application.

A plurality of consumer values are retrieved in response to the request(block 1120). The plurality of consumer values represent a plurality ofinteractions with the social media application via the consumer account(by the consumer) during a time period occurring before the request isreceived. In some embodiments, the plurality of consumer values can bedefined by at least a portion of the presentation module. In someembodiments, the plurality of consumer values can be retrieved from apresentation value database.

A first portion of a presentation is defined based on the plurality ofconsumer values and a first portion of sharer content from the pluralityof sharer content (block 1130). In some embodiments, a format of thefirst portion of sharer content within the presentation can be definedbased on the plurality of consumer values. The first portion of sharercontent can include content shared by the sharer or any contentassociated with a social media account of the sharer. Although not shownin FIG. 11, in some embodiments, the first portion of sharer content canbe selected from the plurality of sharer content based on a variety ofpresentation values including the plurality of consumer values. In someembodiments, the first portion of sharer content can be associated witha specified contextual category, can be associated with a time frame,and/or so forth.

An interaction, occurring via the consumer account, with the firstportion of the presentation is detected (block 1140). In someembodiments, the interaction of concern with the first portion of thepresentation can be an interaction with a reference included in thefirst portion of presentation. In some embodiments, reference can beincluded in the first portion of the presentation by a linking modulesuch as linking module 265 shown in FIG. 2.

A second portion of the presentation is defined based on a combinationof the plurality of consumer values, a second portion of sharer contentfrom the plurality of sharer content, and the interaction with the firstportion of the presentation (block 1150). In some embodiments, a formatof the first portion of sharer content within the presentation can bedefined based on the plurality of consumer values. The first portion ofsharer content can include content shared by the sharer (via the shareraccount) or any content associated with a social media account of thesharer. Although not shown in FIG. 11, in some embodiments, the firstportion of sharer content can be selected from the plurality of sharercontent based on a variety of presentation values including theplurality of consumer values. In some embodiments, the first portion ofsharer content can be associated with a specified contextual category,can be associated with a time frame, and/or so forth.

Implementations of the various techniques described herein may beimplemented in digital electronic circuitry, or in computer hardware,firmware, software, or in combinations of them. Implementations mayimplemented as a computer program product, i.e., a computer programtangibly embodied in an information carrier, e.g., in a machine-readablestorage device (computer-readable medium) or in a propagated signal, forprocessing by, or to control the operation of, data processingapparatus, e.g., a programmable processor, a computer, or multiplecomputers. A computer program, such as the computer program(s) describedabove, can be written in any form of programming language, includingcompiled or interpreted languages, and can be deployed in any form,including as a stand-alone program or as a module, component,subroutine, or other unit suitable for use in a computing environment. Acomputer program can be deployed to be processed on one computer or onmultiple computers at one site or distributed across multiple sites andinterconnected by a communication network.

Method steps may be performed by one or more programmable processorsexecuting a computer program to perform functions by operating on inputdata and generating output. Method steps also may be performed by, andan apparatus may be implemented as, special purpose logic circuitry,e.g., an FPGA (field programmable gate array) or an ASIC(application-specific integrated circuit).

Processors suitable for the processing of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor will receive instructions and data from a read-only memory ora random access memory or both. Elements of a computer may include atleast one processor for executing instructions and one or more memorydevices for storing instructions and data. Generally, a computer alsomay include, or be operatively coupled to receive data from or transferdata to, or both, one or more mass storage devices for storing data,e.g., magnetic, magneto-optical disks, or optical disks. Informationcarriers suitable for embodying computer program instructions and datainclude all forms of non-volatile memory, including by way of examplesemiconductor memory devices, e.g., EPROM, EEPROM, and flash memorydevices; magnetic disks, e.g., internal hard disks or removable disks;magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor andthe memory may be supplemented by, or incorporated in special purposelogic circuitry.

To provide for interaction with a user, implementations may beimplemented on a computer having a display device, e.g., a cathode raytube (CRT) or liquid crystal display (LCD) monitor, for displayinginformation to the user and a keyboard and a pointing device, e.g., amouse or a trackball, by which the user ca provide input to thecomputer. Other kinds of devices can be used to provide for interactionwith a user as well; for example, feedback provided to the user can beany form of sensory feedback, e.g., visual feedback, auditory feedback,or tactile feedback; and input from the user can be received in anyform, including acoustic, speech, or tactile input.

Implementations may be implemented in a computing system that includes aback-end component, e.g., as a data server, or that includes amiddleware component, e.g., an application server, or that includes afront-end component, e.g., a client computer having a graphical userinterface or a Web browser through which a user can interact with animplementation, or any combination of such back-end, middleware, orfront-end components. Components may be interconnected by any form ormedium of digital data communication, e.g., a communication network.Examples of communication networks include a local area network (LAN)and a wide area network (WAN), e.g., the Internet.

While certain features of the described implementations have beenillustrated as described herein, many modifications, substitutions,changes and equivalents will now occur to those skilled in the art. Itis, therefore, to be understood that the appended claims are intended tocover all such modifications and changes as fall within the scope of theembodiments. It should be understood that they have been presented byway of example only, not limitation, and various changes in form anddetails may be made. Any portion of the apparatus and/or methodsdescribed herein may be combined in any combination, except mutuallyexclusive combinations. The embodiments described herein can includevarious combinations and/or sub-combinations of the functions,components and/or features of the different embodiments described.

What is claimed is:
 1. A computer system including instructions storedon a tangible computer-readable storage medium, the computer systemcomprising: a presentation module configured to receive a request,triggered via a consumer account, to access using a social mediaapplication a plurality of sharer content associated with a shareraccount of the social media application; a relationship moduleconfigured to access, in response to the request, a relationship valuerepresenting a type of relationship between a consumer identifier of theconsumer account and a sharer identifier of the sharer account within asocial network associated with the sharer account; and a presentationcomposition module configured to select a subset of sharer content fromthe plurality of sharer content based on the relationship value, andconfigured to define a configuration of the subset of sharer contentwithin a portion of a presentation based on the relationship value.